﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using Atlandiz.Data;
using System.IO;

namespace Atlandiz.EnvanterVeZimmetYonetimi
{
    public partial class FormLogin : DevExpress.XtraEditors.XtraForm
    {
        public FormLogin()
        {
            InitializeComponent();
        }

        private void Login_Load(object sender, EventArgs e)
        {

            Army.LicenseService.Url = "http://app.atlandiz.com/LicenseService/LicenseService.asmx";

                if (Army.Certificate.Length < 1)
                {
                    LicenseManage LisansYonetimi = new LicenseManage();
                    LisansYonetimi.ShowDialog();
                }
                else
                {
                    if (AtlandizSmo.Shell() == false)
                    {
                        MessageBox.Show("Geçersiz Lisans", "Geçersiz Lisans", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        LicenseManage LisansYonetimi = new LicenseManage();
                        LisansYonetimi.ShowDialog();
                    }
                }
           
            if (Army.SQLSunucu.Length<1)
            {
                MessageBox.Show("Değerli Kullanıcı\nÖncelikle Erişim & Yapılandırma Ayarlarını yapmalısınız.","Yapılandırma Dosyası Bulunamadı.",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);
                FormYapilandirma NewSet = new FormYapilandirma();
                NewSet.JustSQL = true;
                NewSet.ShowDialog();

                Army.StartupEvents();
            }
        }

        private void textEdit2_EditValueChanged(object sender, EventArgs e)
        {
            _txtParolaString.Properties.PasswordChar='*';
        }

        private void _btnKonfig_Click(object sender, EventArgs e)
        {
            FormYapilandirma Konfig = new FormYapilandirma();
            Konfig.JustSQL = true;
            Konfig.ShowDialog();
        }

        public void Kapanis() {
            this.Close();
            Application.Exit();
        }

        private void _btnKapat_Click(object sender, EventArgs e)
        {
            Kapanis();
        }

        private void _btnGiris_Click(object sender, EventArgs e)
        {

            if (Army.SQLSunucu == "" | Army.SQLVeritabani == "") {
                MessageBox.Show("Erişim ve Veritabanı ayarlarını yapmalısınız.","Bağlantı Tanımları Yetersiz",MessageBoxButtons.OK,MessageBoxIcon.Information);
                return;
            }

            _btnGiris.Enabled = false;

            this.Hide();

            DataTable dt = (Army.SQL().GetDataTable("Select kID, kAdi,Parola,AdSoyad,Yetki from Kullanici where isDeleted=0 AND kAdi='" + _txtKullaniciAdiString.Text + "'"));
            if (dt.Rows.Count > 0)
            {
                string pass = _txtParolaString.Text;
                if (Atlandiz.Data.Hash.VerifyHash(pass, "SHA1", dt.Rows[0]["Parola"].ToString()))
                {
                    Army.StartupEventsAfterLogin();
                    Army.UserTipi = int.Parse(dt.Rows[0][4].ToString());
                    Army.ActiveUserId = int.Parse(dt.Rows[0][0].ToString());

                    FormAnaEkran ae = new FormAnaEkran();
                    ae.ShowDialog();
                }
                else {
                    //Army.StartupEventsAfterLogin();
                    //Army.UserTipi = int.Parse(dt.Rows[0][4].ToString());
                    //Army.ActiveUserId = int.Parse(dt.Rows[0][0].ToString());

                    //FormAnaEkran ae = new FormAnaEkran();
                    //ae.ShowDialog();
                    MessageBox.Show("Geçersiz Kullanıcı Bilgisi", "Erişim Engellendi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            this.Show();

            _btnGiris.Enabled = true;
        }

        private void _btnLisansManager_Click(object sender, EventArgs e)
        {
            LicenseManage LisansYonetimi = new LicenseManage();
            LisansYonetimi.ShowDialog();
        }

    }
}